package io.github.wangtisnruipopo.carscore.types;

import java.util.List;

public interface IAppointPlay {
    void appoint(int index);

    /**
     * <h2>记录出过的牌</h2>
     *
     * @param record 出牌记录对象
     */
    void addRecord(IPlayCardsRecord<?, ?, ?, ?, ?> record);

    <C extends ISimpleCard<?, ?>, P extends IPlayer<?, ?, ?>, T extends IPlayCardsType<C>>
    void addRecord(List<C> cards, P sourcePlayer, P targetPlayer, T type, boolean skip);
}
